package com.wxiao.exam;

import com.wxiao.exam.pojo.vo.*;

import java.lang.reflect.InvocationTargetException;

/** 
 * <br/>
 * Created by wangxiao on 2019/07/08
 */
public interface QuestionService {

	Result addQuestion(QuestionVO questionVO) throws Exception;

	Result updateQuestion(QuestionVO questionVO) throws Exception;
	
	Result findDetailQuestion(QuestionVO questionVO) throws Exception;
	
	Result listQuestion(QuestionVO questionVO) throws Exception;

    Result listQuestionPage(QuestionVO questionVO) throws Exception;
	
	Result countQuestion(QuestionVO questionVO) throws Exception;
	
	Result deleteQuestion(QuestionVO questionVO) throws Exception;

	PageBean<QuestionListVO> listQuestionChoice(QuestionChoiceVO questionChoiceVO) throws InvocationTargetException, IllegalAccessException;

	PageBean<QuestionListVO> listQuestionJudge(QuestionJudgeVO questionJudgeVO) throws InvocationTargetException, IllegalAccessException;

	PageBean<QuestionManageVO> listQuestionByExam(Integer eid, Integer pageCode, int pageSize, int navigatePages);

	Result addJudge(QuestionJudgeVO judgeVO, Integer examId) throws Exception;

	Result addChoice(QuestionChoiceVO listVo, Integer examId) throws Exception;

	Result updateChoice(QuestionChoiceVO listVo);

	Result updateJudge(QuestionJudgeVO judgeVO);

    Result rate(Integer qid);
}